package com.sh.rbac.domain.vo.menu;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.List;

/**
 * 菜单导航视图对象
 * @author wb
 * @since 2025-02-09
 */

@Schema(description = "菜单导航视图对象")
@Data
public class MenuNavVO {

    @Schema(description = "菜单名称")
    private String name;
    @Schema(description = "菜单路径")
    private String path;
    @Schema(description = "菜单组件")
    private String component;
    @Schema(description = "重定向")
    private String redirect;
    @Schema(description = "是否隐藏")
    private Boolean hidden;
    @Schema(description = "菜单元数据")
    private Meta meta;

    @Schema(description = "子菜单")
    private List<MenuNavVO> children;


    @Data
    public static class Meta {
        @Schema(description = "菜单标题")
        private String title;
        @Schema(description = "菜单图标")
        private String icon;
    }
}